Parallel Object–Oriented Pattern Catalogue
نویسنده
چکیده
Method Sequence prefix() executeSequence() suffix() Abstract Method Facade firstPhase() secondPhase() thirdPhase() . . . lastPhase() facade Method Sequence prefix() suffix() Method Facade firstPhase() secondPhase() thirdPhase() . . . lastPhase() Figure 4: The structure of the Method Sequence pattern using OMT notation. suffix() This method is invoked after the sequence has completed executing. It can be used for any cleanup required by the sequence or facade objects, or can be used to invoke other parts of a larger program (including other parallel patterns). In the PSRS algorithm, this method may be used to verify that the data is properly sorted. By default, this method does nothing. The hook methods for the Facade object in the Method Sequence pattern are the methods listed in the last pattern parameter. By default, these methods do nothing. 2.7 Structure and Participants The structure of the Method Sequence pattern, using OMT notation, is given in Figure 4. The key participants in the Method Sequence pattern are the following: Abstract Method Sequence This abstract class is responsible for implementing the structure of the pattern. In the Method Sequence pattern, it has methods for executing the sequence of methods on an instance of Abstract Method Facade. It also provides default implementations of all hook methods. Method Sequence This concrete class allows users to implement hook methods and extend the pattern with additional methods. The user implements hook methods by overriding the default implementation from the abstract superclass. Additional methods can also be added, and the constructors can be augmented to include new parameters1. Abstract Method Facade This abstract class provides the structure for the Facade object. It provides a default constructor and the default implementations of the hook methods. Method Facade This class is the receiver object for the methods in the sequence. The user uses this class to implement hook methods, add new methods, and augment constructors. This class is also responsible for storing partial 1This is not true of all concrete classes, since some objects are created as part of the parallel structure which, at the highest level of abstraction of CO2P3S, cannot be modified. 6 main program Method Sequence Method Facade executeSequence() prefix() suffix() firstPhase()
منابع مشابه
A Software Transformation Framework for Quality-Driven Object-Oriented Re-engineering
In re-engineering object-oriented legacy code, it is frequently useful to introduce a design pattern in order to improve specific non-functional requirements (e.g., maintainability enhancement). This paper presents a methodology for the development of a quality-driven re-engineering framework for object-oriented systems. First, a catalogue of design motifs (primitive design pattern transformati...
متن کاملCloud Deployment Patterns: Migrating a Database Driven Application to the Cloud using Design Patterns
Cloud computing provides scalable and reliable computing services that can be beneficial to software organizations that intend to migrate their existing or new applications to the cloud. However, migration is potentially complex, so cloud computing deployment patterns are proposed to support the migration process. This research compares the format, structure and notations of previous object ori...
متن کاملTwin - A Design Pattern for Modeling Multiple Inheritance
We introduce an object-oriented design pattern called Twin that allows us to model multiple inheritance in programming languages that do not support this feature (e.g. Java, Modula-3, Oberon-2). The pattern avoids many of the problems of multiple inheritance while keeping most of its benefits. The structure of this paper corresponds to the form of the design pattern catalogue in [GHJV95].
متن کاملUsing Object-Oriented Techniques for Realizing Parallel Architectural Skeletons
The concept of design patterns has recently emerged as a new paradigm in the context of object-oriented design methodology. Similar ideas are being explored in other areas of computing. In the parallel computing domain, design patterns describe recurring parallel computing problems and their solution strategies. Starting with the late 1980’s, several pattern-based systems have been built for fa...
متن کاملObject-Oriented Pattern-Based Parallel Programming with Automatically Generated Frameworks
The CO2P3S parallel programming system uses design patterns and object–oriented programming to reduce the complexities of parallel programming. The system generates correct frameworks from pattern template specifications and provides a layered programming model to address both the problems of correctness and openness. This paper describes the highest level of abstraction in CO2P3S, using two ex...
متن کامل